### ASCII KEYCODE TABLE FOR THE ADAM KEYBOARD - Rev. 9, Sept 6, 1983

**** KEYCODES GENERATED BY ADAM COMPUTER KEYBOARD ****

DEC | HEX | ASCII DATA | CV KEY(S) | REPEAT | COMMENTS
--- | --- | --- | --- | --- | ---
0 | 00 | NUL | cntrl 2 | N | Null (substitute for cntrl @)
1 | 01 | SOH | cntrl A | N | Start of Heading
2 | 02 | STX | cntrl B | N | Start of Text
3 | 03 | ETX | cntrl C | N | End of Text
4 | 04 | EOT | cntrl D | N | End of Transmission
5 | 05 | ENQ | cntrl E | N | Enquiry
6 | 06 | ACK | cntrl F | N | Acknowledge
7 | 07 | BEL | cntrl G | N | Bell
8 | 08 | BS | cntrl H or BACKSPACE | Y | Backspace (see NOTE 5)
9 | 09 | HT | cntrl I or TAB | N | Horizontal Tabulation (see NOTE 6)
10 | 0A | LF | cntrl J | N | Line Feed
11 | 0B | VT | cntrl K | N | Vertical Tabulation
12 | 0C | FF | cntrl L | N | Form Feed
13 | 0D | CR | cntrl M or RETURN | N | Carriage Return
14 | 0E | SO | cntrl N | N | Shift Out
15 | 0F | SI | cntrl O | N | Shift In
16 | 10 | DLE | cntrl P | N | Data Link Escape
17 | 11 | DC1 | cntrl Q | N | Device Control 1
18 | 12 | DC2 | cntrl R | N | Device Control 2
19 | 13 | DC3 | cntrl S | N | Device Control 3
20 | 14 | DC4 | cntrl T | N | Device Control 4
21 | 15 | NAK | cntrl U | N | Negative Acknowledge
22 | 16 | SYN | cntrl V | N | Synchronous Idle
23 | 17 | ETB | cntrl W | N | End of Transmission Block
24 | 18 | CAN | cntrl X | N | Cancel
25 | 19 | EM | cntrl Y | N | End of Medium
26 | 1A | SUB | cntrl Z | N | Substitute
27 | 1B | ESC | cntrl [ or WP/ESCAPE | N | Escape
28 | 1C | FS | cntrl \ | N | File Separator
29 | 1D | GS | cntrl ] | N | Group Separator
30 | 1E | RS | cntrl ^ | N | Record Separator
31 | 1F | US | cntrl 6 | N | Unit Separator (substitute for cntrl _)
32 | 20 | SP | space bar | Y | Space
33 | 21 | ! | shift 1 | Y | Exclamation Point
34 | 22 | " | shift ' | Y | Quotation Marks (or double quotes)
35 | 23 | # | shift 3 | Y | Number Sign
36 | 24 | $ | shift 4 | Y | Dollar Sign
37 | 25 | % | shift 5 | Y | Percent
38 | 26 | & | shift 7 | Y | Ampersand
39 | 27 | ' | ' | Y | Apostrophe (or single quotes)
40 | 28 | ( | shift 9 | Y | Opening Parenthesis
41 | 29 | ) | shift 0 | Y | Closing Parenthesis
42 | 2A | * | shift 8 | Y | Asterisk
43 | 2B | + | + | Y | Plus
44 | 2C | , | , | Y | Comma
45 | 2D | - | - | Y | Hyphen (Minus)
46 | 2E | . | . | Y | Period (Decimal Point)
47 | 2F | / | / | Y | Slant
48 | 30 | 0 | 0 | Y |
49 | 31 | 1 | 1 | Y |
50 | 32 | 2 | 2 | Y |
51 | 33 | 3 | 3 | Y |
52 | 34 | 4 | 4 | Y |
53 | 35 | 5 | 5 | Y |
54 | 36 | 6 | 6 | Y |
55 | 37 | 7 | 7 | Y |
56 | 38 | 8 | 8 | Y |
57 | 39 | 9 | 9 | Y |
58 | 3A | : | shift ; | Y | Colon
59 | 3B | ; | ; | Y | Semicolon
60 | 3C | < | shift , | Y | Less Than
61 | 3D | = | shift + | Y | Equals
62 | 3E | > | shift . | Y | Greater Than
63 | 3F | ? | shift / | Y | Question Mark
64 | 40 | @ | shift 2 | Y | Commercial At
65 | 41 | A | shift A | Y | upper case
66 | 42 | B | shift B | Y | upper case
67 | 43 | C | shift C | Y | upper case
68 | 44 | D | shift D | Y | upper case
69 | 45 | E | shift E | Y | upper case
70 | 46 | F | shift F | Y | upper case
71 | 47 | G | shift G | Y | upper case
72 | 48 | H | shift H | Y | upper case
73 | 49 | I | shift I | Y | upper case
74 | 4A | J | shift J | Y | upper case
75 | 4B | K | shift K | Y | upper case
76 | 4C | L | shift L | Y | upper case
77 | 4D | M | shift M | Y | upper case
78 | 4E | N | shift N | Y | upper case
79 | 4F | O | shift O | Y | upper case
80 | 50 | P | shift P | Y | upper case
81 | 51 | Q | shift Q | Y | upper case
82 | 52 | R | shift R | Y | upper case
83 | 53 | S | shift S | Y | upper case
84 | 54 | T | shift T | Y | upper case
85 | 55 | U | shift U | Y | upper case
86 | 56 | V | shift V | Y | upper case
87 | 57 | W | shift W | Y | upper case
88 | 58 | X | shift X | Y | upper case
89 | 59 | Y | shift Y | Y | upper case
90 | 5A | Z | shift Z | Y | upper case
91 | 5B | [ | [ | Y | Opening Bracket
92 | 5C | \ | \ | Y | Reverse Slant
93 | 5D | ] | ] | Y | Closing Bracket
94 | 5E | ^ | ^ | Y | Circumflex
95 | 5F | _ | shift 6 | Y | Underline
96 | 60 | ` | shift - | Y | Grave Accent
97 | 61 | a | A | Y | lower case
98 | 62 | b | B | Y | lower case
99 | 63 | c | C | Y | lower case
100 | 64 | d | D | Y | lower case
101 | 65 | e | E | Y | lower case
102 | 66 | f | F | Y | lower case
103 | 67 | g | G | Y | lower case
104 | 68 | h | H | Y | lower case
105 | 69 | i | I | Y | lower case
106 | 6A | j | J | Y | lower case
107 | 6B | k | K | Y | lower case
108 | 6C | l | L | Y | lower case
109 | 6D | m | M | Y | lower case
110 | 6E | n | N | Y | lower case
111 | 6F | o | O | Y | lower case
112 | 70 | p | P | Y | lower case
113 | 71 | q | Q | Y | lower case
114 | 72 | r | R | Y | lower case
115 | 73 | s | S | Y | lower case
116 | 74 | t | T | Y | lower case
117 | 75 | u | U | Y | lower case
118 | 76 | v | V | Y | lower case
119 | 77 | w | W | Y | lower case
120 | 78 | x | X | Y | lower case
121 | 79 | y | Y | Y | lower case
122 | 7A | z | Z | Y | lower case
123 | 7B | { | shift [ | Y | Opening Brace
124 | 7C | | | shift \ | Y | Vertical Line
125 | 7D | } | shift ] | Y | Closing Brace
126 | 7E | ~ | shift ^ | Y | Tilde
127 | 7F | DEL | cntrl DELETE | Y | Delete (Substitute for DEL)

** end of ASCII codes **

** start of COLECO special codes (i.e., non-ASCII) defined by group **

a) SOFTKEY GROUP

DEC | HEX | CV KEY(S) | REPEAT | COMMENTS
--- | --- | --- | --- | ---
128 | 80 | HOME | N | group exception
129 | 81 | I | N | softkey 1
130 | 82 | II | N | softkey 2
131 | 83 | III | N | softkey 3
132 | 84 | IV | N | softkey 4
133 | 85 | V | N | softkey 5
134 | 86 | VI | N | softkey 6
135 | 87 |  |  | unused code
136 | 88 |  |  | unused code
137 | 89 | shift I | N |
138 | 8A | shift II | N |
139 | 8B | shift III | N |
140 | 8C | shift IV | N |
141 | 8D | shift V | N |
142 | 8E | shift VI | N |
143 | 8F |  |  | unused code

b) WORD PROCESSOR "hard key" GROUP

DEC | HEX | CV KEY(S) | REPEAT | COMMENTS
--- | --- | --- | --- | ---
144 | 90 | WILD CARD | N |
145 | 91 | UNDO | N |
146 | 92 | MOVE | N |
147 | 93 | STORE | N |
148 | 94 | INSERT | N |
149 | 95 | PRINT | N |
150 | 96 | CLEAR | N |
151 | 97 | DELETE | N | independent function from ASCII delete (DEL)
152 | 98 | shift WILD CARD | N |
153 | 99 | shift UNDO | N |
154 | 9A | shift MOVE | N | (COPY)
155 | 9B | shift STORE | N | (FETCH)
156 | 9C | shift INSERT | N |
157 | 9D | shift PRINT | N |
158 | 9E | shift CLEAR | N |
159 | 9F | shift DELETE | N | independent function from ASCII delete (DEL)

c) CURSOR CONTROL GROUP

DEC | HEX | CV KEY(S) | REPEAT | COMMENTS
--- | --- | --- | --- | ---
160 | A0 | up arrow | Y | north
161 | A1 | right arrow | Y | east
162 | A2 | down arrow | Y | south
163 | A3 | left arrow | Y | west
164 | A4 | cntrl up arrow | Y |
165 | A5 | cntrl right arrow | Y |
166 | A6 | cntrl down arrow | Y |
167 | A7 | cntrl left arrow | Y |
168 | A8 | up arrow + right arrow | Y | northeast - sequence independent, time critical
169 | A9 | right arrow + down arrow | Y | southeast - sequence independent, time critical
170 | AA | down arrow + left arrow | Y | southwest - sequence independent, time critical
171 | AB | left arrow + up arrow | Y | northwest - sequence independent, time critical
172 | AC | HOME + up arrow | N | sequence independent, time critical
173 | AD | HOME + right arrow | N | sequence independent, time critical
174 | AE | HOME + down arrow | N | sequence independent, time critical
175 | AF | HOME + left arrow | N | sequence independent, time critical

d) GENERAL KEY GROUP

DEC | HEX | CV KEY(S) | REPEAT | COMMENTS
--- | --- | --- | --- | ---
170 | B0 |  |  | unused code
171 | B1 |  |  | unused code
17 | B2 |  |  | unused code
17 | B3 |  |  | unused code
180 | B4 |  |  | unused code
181 | B5 |  |  | unused code
182 | B6 |  |  | unused code
183 | B7 |  |  | unused code
184 | B8 | shift BACKSPACE | Y | (see NOTE 5)
185 | B9 | shift TAB | N | (see NOTE 6)
186 | BA |  |  | unused code
187 | BB |  |  | unused code
188 | BC |  |  | unused code
189 | BD |  |  | unused code
190 | BE |  |  | unused code
191 | BF |  |  | unused code

** end of COLECO special codes defined by group **

** NOTES **

- NOTE 1: The lock key will act as a "shift lock function." i.e., when in the active state (on) all keys will behave as if they were produced by their shifted key versions. Of course, where the lock key is inactive (off) all key depressions will be treated as normal unshifted key depressions. The foregoing description is analogous in operation to that of a standard keyboard.

- NOTE 2: The remaining codes 0C0H thru 0EFH are unused codes.

- NOTE 3: Codes 0F0H thru 0FFH are reserved for internal use by the keyboard software.

- NOTE 4: The following keys have no code assigned to them. They are used internally by the keyboard software to calculate the key value: CNTRL, SHIFT, and LOCK. No serial transmission occurs for these keys.

- NOTE 5: Codes 008H and 0B8H are provided for purposes of non-desctructive and destructive BACKSPACE. The interpretation of these codes is application dependent. It is recommended that the following convention be used:

  008H = BACKSPACE (as defined by ASCII)

  0B8H = destructive BACKSPACE

- NOTE 6: Codes 009H and 0B9H are provided for purposes of right TAB and left TAB. The interpretation of these codes is application dependent. It is recommended that the following convention be used:

  009H = right TAB (as defined by ASCII)

  0B9H = left TAB

Back to the ADAM Technical Manual.